/*
    Copyright (C) 2011 Rodrigo Castaño - Hugo Arregui, FuDePAN

    This file is part of the Prot-Filer Library

    Prot-Filer is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    Prot-Filer is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with Prot-Filer.  If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef DEFINITIONS_H
#define DEFINITIONS_H

#define NO_BIO_MOLECULAR
#include "biopp/biopp.h"

namespace prot_filer
{

typedef biopp::AtomWithTypeAnd3DCoords ATOM;
typedef ATOM::AtomType AtomType;
const AtomType N = ATOM::N;
const AtomType C = ATOM::C;
const AtomType CA = ATOM::CA;

typedef float AngleValue;
typedef uint32_t AngleId;

const unsigned int ATOMS_PER_RESIDUE = 3;

const double b_C_N  = 1.330;
const double b_N_CA = 1.460;
const double b_CA_C = 1.525;

const double a_CA_C_N = 2.059454;
const double cos_a_CA_C_N = -0.469441085;
const double sin_a_CA_C_N = 0.882963797;
const double a_C_N_CA = 2.111813;
const double cos_a_C_N_CA = -0.515007735;
const double sin_a_C_N_CA = 0.85718553;

const double a_N_CA_C = 2.024582156;
const double cos_a_N_CA_C = -0.438371348;
const double sin_a_N_CA_C = 0.898793948;

const double OMEGA = 3.124087;
const double cos_OMEGA = -0.999847695;
const double sin_OMEGA = 0.017452406;

}
#endif // DEFINITIONS_H
